lexer grammar DglLexer;

options {
  language = Java;
}
@lexer::header {
   package ejercicio8;
}

fragment DIGITO : '0'..'9';
fragment LETRA: ('a'..'z'|'A'..'Z'| ' ') ;
fragment TEXTO: LETRA+;

GRAPH: 'graph';
NODE: 'node';
EDGE: 'edge';
COMILLAS: '"';
TITLE: 'title';
LABEL: 'label';
BORDER: 'borderstyle';
SOLID: 'solid';
DASH: 'dashed';
DOT: 'dotted';
SOURCE: 'source';
TARGET: 'target';
ARROW: 'arrowstyle';
LINE: 'line';
NONE: 'none';
LLAVOP: '{';
LLAVCL: '}';
COMENTARIO: '//' ~('\n'|'\r')* '\r'? '\n'{$channel=HIDDEN;} ;

NUMERO : (DIGITO)+ ('.'(DIGITO)+)?;
OP_SUMA : '+'|'-';
OP_PROD : '/'|'*';
PAR_OP : '(' ;
PAR_CL : ')' ;
SEPARADOR : ';' ;
COLON: ':';
CADENA: COMILLAS TEXTO COMILLAS;
BLANCO : (' '|'\t'|'\r'?'\n') {$channel=HIDDEN;} ;

